package com.itc.dispatch.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;

import com.itc.common.core.validate.Add;
import com.itc.common.core.validate.Delete;
import com.itc.common.core.validate.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 机位设备信息表
 * @TableName flight_device
 */
@TableName(value ="flight_device")
@Data
public class FlightDevice implements Serializable {




    /**
     * 设备id
     */
    @ApiModelProperty(value = "设备id")
    @NotNull(message = "设备id不能为空",groups = {Update.class, Delete.class})
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 设备名称
     */
    @ApiModelProperty(value = "设备名称")
    @NotBlank(message = "设备名称不能为空",groups = {Add.class,Update.class})
    private String deviceName;

    /**
     * 设备位置（机位）
     */
    @ApiModelProperty(value = "设备位置（机位）")
    @NotBlank(message = "设备位置（机位）不能为空",groups = {Add.class,Update.class})
    private String devicePosition;

    /**
     * 设备code
     */
    @ApiModelProperty(value = "设备code")
    @NotBlank(message = "设备code不能为空",groups = {Add.class,Update.class})
    private String deviceCode;

    /**
     * 设备类型
     */
    @ApiModelProperty(value = "设备类型")
    @NotBlank(message = "设备类型不能为空",groups = {Add.class,Update.class})
    private String deviceType;

    /**
     * 设备IP
     */
    @ApiModelProperty(value = "设备IP")
    @NotBlank(message = "设备类型不能为空",groups = {Add.class,Update.class})
    private String deviceIp;

    /**
     * 位置类型（1：登机口，2：机位）
     */
    @ApiModelProperty(value = "位置类型（1：登机口，2：机位）")
    @NotNull(message = "位置类型（1：登机口，2：机位）不能为空",groups = {Add.class,Update.class})
    private Integer positionType;

    /**
     * 视频流地址
     */
    @ApiModelProperty(value = "视频流地址")
    @TableField(exist = false)
    private String flvUrl;

    @ApiModelProperty("删除状态 0_正常 1_删除")
    private Integer delete;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}
